home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 February: Technology Seed / Mac Tech Seed Feb '97.toast / OpenDoc 1.2b2c1 / OpenDoc / Interfaces / C / Extensn.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-02-13  |  7.6 KB  |  260 lines  |  [TEXT/MPS ]

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: Extensn.h.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.18
  7.  *     SOM Emitter emith.dll: 2.33
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *  Classes defined in this interface
  13.  * 
  14.  */
  15.  
  16.  
  17. #ifndef SOM_ODExtension_h
  18. #define SOM_ODExtension_h
  19.  
  20.  
  21. #include <som.h>
  22.  
  23. /*
  24.  * -- This emitter treats Method Tokens as Thunks by default.
  25.  * -- Use the sc modifier "nothunks" to change this default
  26.  */
  27. #undef somresolve_
  28. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  29.  
  30. /*
  31.  * Define the class name as an object type
  32.  */
  33. #ifndef ODExtension
  34. #define ODExtension SOMObject
  35. #endif
  36. #include <RefCtObj.h>
  37.  
  38. /*
  39.  * Start of user-defined types:
  40.  */
  41. #ifndef SOMClass
  42.     #define SOMClass SOMObject
  43. #endif /* SOMClass */
  44. #ifndef SOMObject
  45.     #define SOMObject SOMObject
  46. #endif /* SOMObject */
  47. #ifndef ODFrame
  48.     #define ODFrame SOMObject
  49. #endif /* ODFrame */
  50. #ifndef ODFacet
  51.     #define ODFacet SOMObject
  52. #endif /* ODFacet */
  53. #ifndef ODObject
  54.     #define ODObject SOMObject
  55. #endif /* ODObject */
  56. #ifndef ODExtension
  57.     #define ODExtension SOMObject
  58. #endif /* ODExtension */
  59. #ifndef ODRefCntObject
  60.     #define ODRefCntObject SOMObject
  61. #endif /* ODRefCntObject */
  62.  
  63. /*
  64.  * End of user-defined types.
  65.  */
  66.  
  67. #define ODExtension_MajorVersion 1
  68. #define ODExtension_MinorVersion 0
  69.  
  70. /*
  71.  * External name shortening if required
  72.  */
  73. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  74. #define ODExtensionClassData d
  75. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  76. /*--------------Migration------------*/
  77.  
  78. #ifdef OLDIBMSOMAPISUPPORT
  79. #define ODExtension_classObj somNewClassReference(ODExtension)
  80. #define _ODExtension ODExtension_classObj
  81. #define ODExtensionCClassData ODExtensionClassData
  82. #define ODExtensionNewClass(major,minor) somNewVersionedClassReference(ODExtension,major,minor)
  83. #endif
  84.  
  85. /* define xxxMetaClass macro to facilitate (cls ## MetaClass) */
  86. #define ODExtensionMetaClass SOMClass
  87.  
  88. #if PRAGMA_ALIGN_SUPPORTED
  89. #  pragma options align=power
  90. #endif
  91.  
  92. /*
  93.  * Declare the class data structure
  94.  */
  95. SOMEXTERN struct ODExtensionClassDataStructure {
  96. #ifdef OLDIBMSOMAPISUPPORT
  97.     SOMAny            *classObject;    /* always zero, use somNewClassReference instead */
  98. #else
  99.     long zero;
  100. #endif
  101.     somStaticClassInfo *sci;
  102.     somDToken        instanceDataToken;
  103.     long reserved [3];
  104.     somMToken InitExtension;
  105.     somMToken GetBase;
  106.     somMToken BaseRemoved;
  107.     somMToken IsValid;
  108.     somMToken CheckValid;
  109. } SOMDLINK ODExtensionClassData;
  110.  
  111. #if PRAGMA_ALIGN_SUPPORTED
  112. #  pragma options align=reset
  113. #endif
  114.  
  115. #if !defined(ODExtension_Class_Source) && !defined(SOM_Module_extensn_Source)
  116. #if PRAGMA_IMPORT_SUPPORTED
  117. #pragma import list ODExtensionClassData
  118. #endif
  119. #endif
  120.  
  121.  
  122. /*
  123.  * New macro for ODExtension
  124.  */
  125. #define ODExtensionNew() somNewObject(ODExtension)
  126.  
  127. /*
  128.  * Override method: Release
  129.  */
  130. #define ODExtension_Release(somSelf,ev) \
  131.     ODRefCntObject_Release(somSelf,ev)
  132.  
  133. /*
  134.  * New Method: InitExtension
  135.  */
  136. typedef void   (SOMLINK *somTD_ODExtension_InitExtension)(ODExtension *somSelf, Environment *ev,
  137.         ODObject* base);
  138. #define somMD_ODExtension_InitExtension "::ODExtension::InitExtension"
  139. #define ODExtension_InitExtension(somSelf,ev,base) \
  140.     (SOM_Resolve(somSelf, ODExtension, InitExtension) \
  141.     (somSelf,ev,base))
  142. #ifndef SOMGD_InitExtension
  143.     #if (defined(_InitExtension) || defined(__InitExtension))
  144.         #undef _InitExtension
  145.         #undef __InitExtension
  146.         #define SOMGD_InitExtension 1
  147.     #else
  148.         #define _InitExtension ODExtension_InitExtension
  149.     #endif /* _InitExtension */
  150. #endif /* SOMGD_InitExtension */
  151.  
  152. /*
  153.  * New Method: GetBase
  154.  */
  155. typedef ODObject*   (SOMLINK *somTD_ODExtension_GetBase)(ODExtension *somSelf, Environment *ev);
  156. #define somMD_ODExtension_GetBase "::ODExtension::GetBase"
  157. #define ODExtension_GetBase(somSelf,ev) \
  158.     (SOM_Resolve(somSelf, ODExtension, GetBase) \
  159.     (somSelf,ev))
  160. #ifndef SOMGD_GetBase
  161.     #if (defined(_GetBase) || defined(__GetBase))
  162.         #undef _GetBase
  163.         #undef __GetBase
  164.         #define SOMGD_GetBase 1
  165.     #else
  166.         #define _GetBase ODExtension_GetBase
  167.     #endif /* _GetBase */
  168. #endif /* SOMGD_GetBase */
  169.  
  170. /*
  171.  * New Method: BaseRemoved
  172.  */
  173. typedef void   (SOMLINK *somTD_ODExtension_BaseRemoved)(ODExtension *somSelf, Environment *ev);
  174. #define somMD_ODExtension_BaseRemoved "::ODExtension::BaseRemoved"
  175. #define ODExtension_BaseRemoved(somSelf,ev) \
  176.     (SOM_Resolve(somSelf, ODExtension, BaseRemoved) \
  177.     (somSelf,ev))
  178. #ifndef SOMGD_BaseRemoved
  179.     #if (defined(_BaseRemoved) || defined(__BaseRemoved))
  180.         #undef _BaseRemoved
  181.         #undef __BaseRemoved
  182.         #define SOMGD_BaseRemoved 1
  183.     #else
  184.         #define _BaseRemoved ODExtension_BaseRemoved
  185.     #endif /* _BaseRemoved */
  186. #endif /* SOMGD_BaseRemoved */
  187.  
  188. /*
  189.  * New Method: IsValid
  190.  */
  191. typedef ODBoolean   (SOMLINK *somTD_ODExtension_IsValid)(ODExtension *somSelf, Environment *ev);
  192. #define somMD_ODExtension_IsValid "::ODExtension::IsValid"
  193. #define ODExtension_IsValid(somSelf,ev) \
  194.     (SOM_Resolve(somSelf, ODExtension, IsValid) \
  195.     (somSelf,ev))
  196. #ifndef SOMGD_IsValid
  197.     #if (defined(_IsValid) || defined(__IsValid))
  198.         #undef _IsValid
  199.         #undef __IsValid
  200.         #define SOMGD_IsValid 1
  201.     #else
  202.         #define _IsValid ODExtension_IsValid
  203.     #endif /* _IsValid */
  204. #endif /* SOMGD_IsValid */
  205.  
  206. /*
  207.  * New Method: CheckValid
  208.  */
  209. typedef void   (SOMLINK *somTD_ODExtension_CheckValid)(ODExtension *somSelf, Environment *ev);
  210. #define somMD_ODExtension_CheckValid "::ODExtension::CheckValid"
  211. #define ODExtension_CheckValid(somSelf,ev) \
  212.     (SOM_Resolve(somSelf, ODExtension, CheckValid) \
  213.     (somSelf,ev))
  214. #ifndef SOMGD_CheckValid
  215.     #if (defined(_CheckValid) || defined(__CheckValid))
  216.         #undef _CheckValid
  217.         #undef __CheckValid
  218.         #define SOMGD_CheckValid 1
  219.     #else
  220.         #define _CheckValid ODExtension_CheckValid
  221.     #endif /* _CheckValid */
  222. #endif /* SOMGD_CheckValid */
  223. #ifndef SOM_DONT_USE_INHERITED_MACROS
  224. #define ODExtension_InitRefCntObject ODRefCntObject_InitRefCntObject
  225. #define ODExtension_Acquire ODRefCntObject_Acquire
  226. #define ODExtension_GetRefCount ODRefCntObject_GetRefCount
  227. #define ODExtension_somUninit SOMObject_somUninit
  228. #define ODExtension_InitObject ODObject_InitObject
  229. #define ODExtension_HasExtension ODObject_HasExtension
  230. #define ODExtension_AcquireExtension ODObject_AcquireExtension
  231. #define ODExtension_ReleaseExtension ODObject_ReleaseExtension
  232. #define ODExtension_Purge ODObject_Purge
  233. #define ODExtension_IsEqualTo ODObject_IsEqualTo
  234. #define ODExtension_SubClassResponsibility ODObject_SubClassResponsibility
  235. #define ODExtension_somInit SOMObject_somInit
  236. #define ODExtension_somUninit SOMObject_somUninit
  237. #define ODExtension_somInit SOMObject_somInit
  238. #define ODExtension_somUninit SOMObject_somUninit
  239. #define ODExtension_somDuplicateReference SOMObject_somDuplicateReference
  240. #define ODExtension_somCompareReference SOMObject_somCompareReference
  241. #define ODExtension_somRelease SOMObject_somRelease
  242. #define ODExtension_somFree SOMObject_somFree
  243. #define ODExtension_somCanDelete SOMObject_somCanDelete
  244. #define ODExtension_somGetClass SOMObject_somGetClass
  245. #define ODExtension_somGetClassName SOMObject_somGetClassName
  246. #define ODExtension_somGetSize SOMObject_somGetSize
  247. #define ODExtension_somIsA SOMObject_somIsA
  248. #define ODExtension_somRespondsTo SOMObject_somRespondsTo
  249. #define ODExtension_somIsInstanceOf SOMObject_somIsInstanceOf
  250. #define ODExtension_somDispatch SOMObject_somDispatch
  251. #define ODExtension_somClassDispatch SOMObject_somClassDispatch
  252. #define ODExtension_somCastObj SOMObject_somCastObj
  253. #define ODExtension_somResetObj SOMObject_somResetObj
  254. #define ODExtension_somPrintSelf SOMObject_somPrintSelf
  255. #define ODExtension_somDumpSelf SOMObject_somDumpSelf
  256. #define ODExtension_somDumpSelfInt SOMObject_somDumpSelfInt
  257. #endif /* SOM_DONT_USE_INHERITED_MACROS */
  258.  
  259. #endif       /* SOM_ODExtension_h */
  260.